# Scinder un dépôt en deux dépôts distincts

## Nomenclature

+ OLD_REPO       : nom de l'ancien dépôt à scinder
+ NEW_REPO_1     : nom du nouveau premier dépôt
+ NEW_REPO_2     : nom du nouveau second dépôt
+ OLD_REPO_DIR_1 : nom du dossier qui deviendra NEW_REPO_1
+ OLD_REPO_DIR_2 : nom du dossier qui deviendra NEW_REPO_2
+ TEMP_BRANCH_1  : nom de la branche temporaire de OLD_REPO dans laquelle on va "cloner" OLD_REPO_DIR_1
+ TEMP_BRANCH_2  : nom de la branche temporaire de OLD_REPO dans laquelle on va "cloner" OLD_REPO_DIR_2

## Préparer l'ancien dépôt

$ git clone <url/git/vers/OLD_REPO.git>
$ git subtree split --prefix OLD_REPO_DIR_1 -b TEMP_BRANCH_1
$ git subtree split --prefix OLD_REPO_DIR_2 -b TEMP_BRANCH_2

## Préparer les futurs dépôts

Sur le serveur git créer les futurs dépôts NEW_REPO_1 et NEW_REPO_2.

## Initialiser les futurs dépôts

$ mkdir <chemin/vers/NEW_REPO_1>
$ cd <chemin/vers/NEW_REPO_1>
$ git init --initial-branch=main
$ git pull <chemin/vers/OLD_REPO> TEMP_BRANCH_1
$ git remote add origin <url/git/vers/NEW_REPO_1>
$ mkdir <chemin/vers/NEW_REPO_2>
$ cd <chemin/vers/NEW_REPO_2>
$ git init --initial-branch=main
$ git pull <chemin/vers/OLD_REPO> TEMP_BRANCH_2

## Mettre à jour les dépôts git distants

$ cd <chemin/vers/NEW_REPO_1>
$ git remote add origin <url/git/vers/NEW_REPO_1>
$ git push --set-upstream origin --all
$ git push --set-upstream origin --tags

$ cd <chemin/vers/NEW_REPO_2>
$ git remote add origin <url/git/vers/NEW_REPO_2>
$ git push --set-upstream origin --all
$ git push --set-upstream origin --tags

## Nettoyer l'ancien dépôt

$ cd <chemin/vers/OLD_REPO>
$ git branch -D TEMP_BRANCH_1
$ git branch -D TEMP_BRANCH_2

